package com.moli.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.moli.domain.entity.Menu;

import java.util.List;

/**
 * @Author： XC
 * @Date： 2023-06-08 14:10
 * @Description： 菜单权限表(Menu)表服务接口
 */

public interface MenuService extends IService<Menu> {

	/**
	 * 选择指定用户
	 * @param id
	 * @return
	 */
	List<String> selectPermsByUserId(Long id);

	/**
	 * 选择指定菜单通过用户id
	 * @param userId
	 * @return
	 */
	List<Menu> selectRouterMenuTreeByUserId(Long userId);

	/**
	 * 获取菜单列表
	 * @param menu
	 * @return
	 */
	List<Menu> selectMenuList(Menu menu);

	/**
	 * 获取子菜单
	 * @param menuId
	 * @return
	 */
	boolean hasChild(Long menuId);

	/**
	 * 获取菜单根据用户id
	 * @param roleId
	 * @return
	 */
	List<Long> selectMenuListByRoleId(Long roleId);
}